package com.probox.common.entity.service.customer;

import com.baomidou.mybatisplus.extension.service.IService;
import com.probox.common.entity.domain.customer.CustomerInfoAccountToken;
import com.probox.customer.api.domain.CustomerInfoAccount;
import com.probox.systemApi.model.LoginUser;

import java.util.List;

/**
 * 客户信息TOKENService接口
 *
 * @author zhusiyu
 * @date 2021-05-25
 */
public interface ICustomerInfoAccountTokenService extends IService<CustomerInfoAccountToken> {


        /**
         * 查询客户信息TOKEN
         *
         * @param tokenId 客户信息TOKENID
         * @return 客户信息TOKEN
         */
        public CustomerInfoAccountToken selectCustomerInfoAccountTokenById(Long tokenId);


        /**
         * 查询客户信息TOKEN列表
         *
         * @param customerInfoAccountToken 客户信息TOKEN
         * @return 客户信息TOKEN集合
         */
        public List<CustomerInfoAccountToken> queryList(CustomerInfoAccountToken customerInfoAccountToken);


        /**
         * 新增客户信息TOKEN
         *
         * @param customerInfoAccountToken 客户信息TOKEN
         * @return 结果
         */
        public boolean insertCustomerInfoAccountToken(CustomerInfoAccountToken customerInfoAccountToken);

        /**
         * 修改客户信息TOKEN
         *
         * @param customerInfoAccountToken 客户信息TOKEN
         * @return 结果
         */
        public boolean updateCustomerInfoAccountToken(CustomerInfoAccountToken customerInfoAccountToken);

        /**
         * 批量删除客户信息TOKEN
         *
         * @param tokenIds 需要删除的客户信息TOKENID
         * @return 结果
         */
        public boolean deleteCustomerInfoAccountTokenByIds(Long[] tokenIds);


        Boolean addCustomerToken(LoginUser loginUser);

        /**
         * 创建客户登录token信息
         * @param accountInfo
         * @return
         */
        public CustomerInfoAccountToken createAccountInfoToken(CustomerInfoAccount accountInfo);
}
